#ifndef _BIT_POINTER_H_
#define _BIT_POINTER_H_

#include "../bit/bit.h"
#include "../memory/Memory.h"

class BitPointer
{
	private:
		//pointer to the data which I want to look at. doesn't
		//need to be volatile
		unsigned char* pointer;
		//the number of bit I want to look at. 
		unsigned char bitNumber;//the number of bit

	public:
		//nots the bit of the bit pointer
		void notBit();

		BitPointer();
		BitPointer(volatile unsigned char* pointer, unsigned char number);
		BitPointer(unsigned char* pointer, unsigned char number);
		void setBit(unsigned char value); //sets the bit to 1 or 0.
		unsigned char getBit();//grabs the value of the bit pointed to 
		//will return either 1 or 0.



		//bool operator==(void* p);
		//bool operator==(BitPointer p);
		

};



#endif

